#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QtGui>
#include "Audio.h"
#include <phonon/seekslider.h>
#include <phonon/volumeslider.h>

class MainWindow : public QMainWindow
{
	Q_OBJECT
	public:
		QMenu *menuFile, *menuEdit, *menuPlaylists, *menuTools, *menuHelp;
		QAction *actionOpenFiles, *actionOpenDir, *actionQuit, *actionAbout, *actionRandom, *actionRepeat, *actionPlay, *actionStop, *actionFirst, *actionPrevious, *actionNext, *actionLast, *actionAdd, *actionRemove, *actionNewPlaylist, *actionOpenPlaylist, *actionSavePlaylist, *actionAboutQt;
		QVBoxLayout *layoutCentral;
		QToolBar *toolBarTop, *toolBarBottom;
		QTabWidget *tabWidget;
		QTextCodec *codec;
		QWidget *widgetCentral;
		QLineEdit *lineEditSearch;
		QLabel *labelTime, *labelSearch, *labelStatus;
		Phonon::SeekSlider *seekSlider;
		Phonon::VolumeSlider *volumeSlider;
		
		MainWindow(QObject* parent);
		void controlActions(const QString, bool);	
		static QString displayTime(qint64 time);
		
	private slots:
		void onActionAboutTriggered();
		
	private:
		void initializeComponents();
		void initializeMenuBar();
		void initializeCentralWidget();
		void initializeToolBarTop();
		void initializeToolBarBottom();
		void initializeTabWidget();
		void initializeStatusBar();
		QObject* parent;		
};			

#endif
